//
//  Date+Extension.swift
//  Weibo
//
//  Created by HH on 16/12/8.
//  Copyright © 2016年 Weibo. All rights reserved.
//

import UIKit

extension Date{
    
    
    var sinaTimeString:String{
        
        //先创建一个日期格式
        let dt = DateFormatter()
        
        
        if isThisYear(date: self) {
            //是今年
            //创建出当前日历,利用日历来判断时间
            let calendar = Calendar.current
            
            if calendar.isDateInToday(self) {
                //是今天
                
                let timeInterval = abs(self.timeIntervalSinceNow)
                
                if timeInterval < 60 {
                    //是一分钟之内
                    
                    return "刚刚"
                }else if timeInterval < 3600{
                    
                    //一分钟之前
                    let minute = Int(timeInterval) / 60
                    
                    return "\(minute)分钟之前"
                }else{
                    
                    //一小时之前
                    let hour = Int(timeInterval) / 3600
                    
                    return "\(hour)小时之前"
                }
                
                
            }else if calendar.isDateInYesterday(self){
                //昨天
                dt.dateFormat = "昨天 HH:mm:ss"
            }else{
                //昨天之前
                dt.dateFormat = "MM-dd HH:mm:ss"
            }
            
            
        }else{
            //不是今年
            dt.dateFormat = "yyyy-MM-dd HH:mm"
        }
        
        return dt.string(from: self)
    }
    
    
    
    //MARK:判断是否是今年
    private func isThisYear(date:Date) -> Bool{
        
        let dt = DateFormatter()
        
        dt.dateFormat = "yyyy"
        
        let createAtYear = dt.string(from: date)
        
        let currentYear = dt.string(from: Date())
        
        return createAtYear == currentYear
        

    }
    
}
